#ifndef __onu_comm_h__
#define __onu_comm_h__ 1

#include "sys.h"
#include "net.h"
#include "log.h"
#include "capture.h"
#include "thread_pool.h"
#include "timer.h"
#include "conn_track.h"
#include "ping.h"
#include "dns.h"
#include "devinfo.h"
#include "platform.h"

#define ONU_SW_VERSION "1.0.8"
#define ONU_SW_DATE "201801121744"
#define DEVELOPERKEY ""


typedef struct {
    char ifname[32];
    Capture_t* cap;
    struct Timer_head timer_head;
    TIMER_LOCK_T timer_lock;
} OnuBridge_t;
typedef struct {
    
} OnuRouter_t;
typedef struct {
    Platform_t platform;
    OnuBridge_t bridge;
    OnuRouter_t router;
} OnuProbe_t;



extern OnuProbe_t onuProbe;
// extern thread_pool_t* Thread_pool;


int onu_Router(int argc, char** argv);

uint32_t _cal_wait_sec(uint32_t sec);
void init_comm_req_param(comm_req_param_t* crq, DevInfo_t* devinfo);
void set_sig_block();
int server_addr_to_ipstr(char *svr_host);
#endif
